package com.ease.framework {

/**
 * @private
 *
 * This class defines constants for framework wide use.
 */
public class Constants
{
   /**
    * The parameter key for the [Injectable] metatag that should be used to refer to an
    * instance by its id, as assigned to it through some object directory (e.g.,
    * ViewRegistry, ProxyRegistry, etc.).
    */
   public static const TAGPARAM_INSTANCEID_KEY:String = "instanceId";

   /**
    * The parameter key for the [Injectable] metatag that should be used to specify the
    * creation or lifetime policy of the objects being injected at some injection site.
    * E.g., "createnew" and "lookuponly" are opposites of eachother, while "keepalive"
    * applies when creating a new object and indicates whether it should be kept around
    * to satisfy later lookups or not.
    */
   public static const TAGPARAM_POLICY_KEY:String = "policy";

   /**
    * One of the possible values for the <code>policy</code> metatag-parameter; represents
    * a search-only (no-creation) lookup.
    */
   public static const TAGPARAM_POLICY_LOOKUP_ONLY:String = "lookuponly";

   /**
    * The tag to use for annotating a generic error handler in any component.
    */
   public static const TAG_ERROR_HANDLER:String = "ErrorHandler";

   /**
    * A property annotated with this tag constitutes the data context of the object.
    */
   public static const TAG_CONTEXT:String = "Context";
} // class

} // package
